/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.regressao.linear.modelo;

import java.io.Serializable;
import java.util.Objects;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

/**
 * @author Rodrigo Moreira Alexandre
 * @author Fernando Aparecido Paulo
 */
@Embeddable
public class ItemEixoYPK implements Serializable{
    
    @ManyToOne(fetch = FetchType.LAZY)
    @JoinColumn(name = "ce_eixo_y", updatable = false, insertable = false)
    private EixoY eixoY;
    @Column(name="nr_identificador")
    private int identificador;

    public ItemEixoYPK() {
    }

    public ItemEixoYPK(EixoY eixoY, int identificador) {
        this.eixoY = eixoY;
        this.identificador = identificador;
    }

    public EixoY getEixoY() {
        return eixoY;
    }

    public void setEixoY(EixoY eixoY) {
        this.eixoY = eixoY;
    }


    public int getIdentificador() {
        return identificador;
    }

    public void setIdentificador(int identificador) {
        this.identificador = identificador;
    }

    @Override
    public int hashCode() {
        int hash = 3;
        hash = 37 * hash + Objects.hashCode(this.eixoY);
        hash = 37 * hash + this.identificador;
        return hash;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final ItemEixoYPK other = (ItemEixoYPK) obj;
        if (!Objects.equals(this.eixoY, other.eixoY)) {
            return false;
        }
        if (this.identificador != other.identificador) {
            return false;
        }
        return true;
    }    
}
